# ********************第1题********************
# 实现九九乘法表
# for i in range(1,10):
#     for j in range(1,i+1):
#         print(j,'*',i,'=',i*j,end=" ")
#     print()

# ********************第2题********************
# 实现1-100之和
# sum = 0
# for i in range(1,101):
#     sum += i
# print(sum)

# ********************第3题********************
# 如何跨模块共享变量？
# 答：模块间的导入

# ********************第4题********************
# python中生成随机整数（1-10），随机小数（1-10），0-1随机小数的方法
# import random
#
# # 随机整数（1-10）
# a = random.randint(1,10)
# print(a)
#
# # 随机小数（1-10）
# b = random.uniform(1,10)
# print(b)
#
# # 0-1随机小数
# c = random.random()
# print(c)

# ********************第5题********************
# python中哪些是可变数据类型，哪些是不可变数据类型，为什么？
# 答：可变数据类型：列表，字典，集合
#    不可变数据类型：字符串，元组
#    不可变数据类型一旦定义就不可修改，只能通过重新复制进行修改引用；可变数据类型则可在原有基础上进行修改。

# ********************第6题********************
# 统计字符串中每个字符出现的次数
# str1 = input("请输入随机字符串：")
# str2 = set(str1)
# for i in str2:
#     times = str1.count(i)
#     print(f"{i}出现了{times}次")

# ********************第7题********************
# python实现，给定一个字符串，找到字符串中第一个重复的字符
# str1 = input("请输入随机字符串：")
# for i in str1:
#     if str1.count(i) > 1:
#         break
# print(f"第一个随机出现的字符是{i}")

# ********************第8题********************
# 重复接收一个用户输入的字符，如果是正整数，就输出结果，否则就一直输入
# while True:
#     a = []
#     str1 = input("请随机输入一个字符：")
#     if str1.isdigit():
#         if int(str1) > 0:
#             a.append(str1)
#             print(a)
#         else:
#             continue
#     else:
#         continue

# ********************第9题********************
# 用python实现冒泡排序
list1 = [1,4,6,2,5,3,9,7,8]
length = len(list1) - 1
i = j = 0
#flag = 1
while i < length:
    flag = 1  #标志位
    print(f"第{i+1}次循环，list:{list1}")
    j = 0
    while j < length - i:
        if list1[j] > list1[j + 1]:
            list1[j],list1[j + 1] = list1[j + 1],list1[j]
            flag = 0
        j += 1
    if flag:
        break
    i += 1
print(list1)
